# dict与set
# dict 使用键-值（key-value）存储，具有极快的查找速度。
aa = {'a':10,'b':20,'c':30}
print(aa['a'])
aa['a'] = 100
print(aa)
#把数据放入dict可以通过key放入
#如果key不存在,dict就会报错
#①通过 in 判断key是否存在
if 'a' in aa:
	print("yes")
else:
	print("no")
#②通过dict提供的get方法，如果key不存在，可以返回None，或者自己指定的value：
re = aa.get("a",'no')
print(re)
#要删除一个key，用pop(key)方法，对应的value也会从dict中删除：
aa.pop('a')
print(aa)
#dict内部存放的顺序和key放入的顺序是没有关系的。

#set
#set和dict类似，也是一组key的集合，但不存储value。由于key不能重复，所以，在set中，没有重复的key。
# 要创建一个set，需要提供一个list作为输入集合(重复元素在set中自动被过滤)：
s = set([1,2,3,1,2]);
print(s)
# 添加元素到set中
s.add(4)
print(s)
# 删除元素
s.remove(1)
print(s)
# set可以看成数学意义上的无序和无重复元素的集合，因此，两个set可以做数学意义上的交集、并集等操作：
s1 = set([1,2,3])
s2 = set([3,4,5])
print(s1 & s2)
print(s1 | s2)